[iOS 8] 新しいフォーマッタ NSEnergyFormatter / NSMassFormatter / NSLengthFormatter
新しいフォーマッタ
NSFormatter はある値を文字列にフォーマットするときに使うクラスです。これまでは NSDateFormatter や NSNumberFormatter などがありましたが、iOS 8 から NSEnergyFormatter、NSMassFormatter、NSLengthFormatter が新しく追加されました。
NSEnergyFormatter
NSEnergyFormatter はエネルギーの値を文字列に変換するためのフォーマッタです。カロリーやジュールなどの値を変換することができます。
let energyFormatter = NSEnergyFormatter() energyFormatter.forFoodEnergyUse = true let joules = 10_000.0 println(energyFormatter.stringFromJoules(joules)) // "2.39 Cal"
NSMassFormatter
NSMassFormatter は質量の値を文字列に変換するためのフォーマッタです。グラムやキログラムなどの値を変換することができます。
let massFormatter = NSMassFormatter() let kilograms = 60.0 println(massFormatter.stringFromKilograms(kilograms)) // "132 lb"
NSLengthFormatter
NSLengthFormatter は距離の長さの値を文字列に変換するためのフォーマッタです。メートルやキロメートルなどのような値を変換することができます。
let lengthFormatter = NSLengthFormatter() let meters = 5_000.0 println(lengthFormatter.stringFromMeters(meters)) // "3.107 mi"
まとめ
以上、追加された3つのフォーマッタを確認してみると、いずれも健康やフィットネスに関する値であることが分かります。HealthKit を扱う場合はよく使うようになると思います。また NSLengthFormatter は CoreLocation とか CoreMotion でもよく利用する機会が多いと思います。自分で計算せずにフォーマッタを活用しましょう。